3c33158d1cb38ee4ab3baa21752a3cdf0bdc8ccc,hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/RMAppManager.java,RMAppManager,createAndPopulateNewRMApp,#ApplicationSubmissionContext#number#String#boolean#,335

Before Change


            submissionContext.getApplicationName())) &&
        !authorizer.checkPermission(new AccessRequest(
            ((CapacityScheduler) scheduler)
                .getQueue(submissionContext.getQueue()).getPrivilegedEntity(),
            userUgi, SchedulerUtils.toAccessType(QueueACL.ADMINISTER_QUEUE),
            submissionContext.getApplicationId().toString(),
            submissionContext.getApplicationName()))) {

After Change


    // For now, exclude FS for the acl check.
    if (!isRecovery && YarnConfiguration.isAclEnabled(conf)
        && scheduler instanceof CapacityScheduler) {
      String queueName = submissionContext.getQueue();
      String appName = submissionContext.getApplicationName();
      CSQueue csqueue = ((CapacityScheduler) scheduler).getQueue(queueName);
      if (null != csqueue
          && !authorizer.checkPermission(
              new AccessRequest(csqueue.getPrivilegedEntity(), userUgi,
                  SchedulerUtils.toAccessType(QueueACL.SUBMIT_APPLICATIONS),
                  applicationId.toString(), appName))